"use client"; import styles from "./info.module.css"; import { useState, useEffect } from "react"; import { fetch_video_link } from "../videoLinkfetcher"; import { MediaPlayer, MediaProvider } from "@vidstack/react"; import "@vidstack/react/player/styles/default/theme.css"; import "@vidstack/react/player/styles/default/layouts/video.css"; import { defaultLayoutIcons, DefaultVideoLayout, } from "@vidstack/react/player/layouts/default"; import { storeLocal } from "../history/storeData"; export default function Button({ data2: info }) { const currentDate = new Date(); const [videoLink, setVideoLink] = useState(null); const [buttonGroups, setButtonGroups] = useState(null); useEffect(() => { create_button_group(0, 50); }, []); const groups = createGroups(info.episodes, 50); async function video(id) { const link = await fetch_video_link(id); if (link === undefined) { alert("Sorry, but not links were found"); } else { setVideoLink(link); } } function createGroups(array, size) { const groups = []; for (let i = 0; i < array.length; i += size) { groups.push(array.slice(i, i + size)); } return groups; } function store_to_local(name, image, episode, id) { let newData = { name: name, image: image, episode: episode, id: id, type: "anime", date: `${currentDate.getDate()}-${String( currentDate.getMonth() + 1 ).padStart(2, "0")}`, time: `${currentDate.getHours()}:${String( currentDate.getMinutes() ).padStart(2, "0")}`, }; storeLocal(newData); } function create_button_group(start, end) { setButtonGroups(
{info.episodes && info.episodes.slice(start, end).map((item, index) => ( ))}
); } function handleSelectChange(event) { const selectedIndex = event.target.selectedIndex; const selectedGroup = groups[selectedIndex]; if (selectedGroup) { create_button_group( selectedGroup[0].number - 1, selectedGroup[selectedGroup.length - 1].number ); } } return (

Episodes:

{info.episodes && ( )} {buttonGroups} {videoLink && ( )}
); }